home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Compute! Gazette 1994 August
/
1994-08b.d64
/
pulsing pictures
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-09-20
|
5KB
|
165 lines
0 rem from pgms for pd # 1 taken from q-link disk # 21 .
100 rem pulsing pictures ii for c-64
110 rem george trepal 2650 alturas rd
140 poke 52,32:poke56,32:poke650,128:dimts(39),tc(39):goto560
150 :
160 print"[147]"
170 cd=54272:h=214:l=211
180 p=1024+peek(h)*40+peek(l)+(peek(l)>39)*40
190 ch=peek(p):k=128
200 pokep,((ch+k)and255):pokep+cd,peek(646)
210 poke 53272,(peek(53272)and240)+x
220 ifz$="\"thenpoke53272,(peek(53272)and240)+4:end
230 x=x+2: if x=16 then x=8
240 getz$:ifz$=""then200
241 ifz$="[147]"thengosub1620
250 pokep,ch:printz$;
260 ifz$=chr$(34)thenpoke212,0
270 ifz$="[148]"thenpoke216,0
280 ifz$="[133]"then320
290 ifz$="[136]"then450
291 ifz$="[134]"thenpoke53280,peek(53280)-1
292 ifz$="[135]"thenpoke53281,peek(53281)-1
300 goto180
310 :
320 forj=0to39:ts(j)=peek(1024+j):tc(j)=peek(55296+j):poke(1024+j),32:next
330 input"program name";pn$
340 ifpn$=""then330
350 pn$=pn$+",s,w"
360 forj=0to39:pokej+1024,ts(j):poke(j+55296),tc(j):next
370 open8,8,8,pn$
380 gosub1580
390 forj=1024to2023:vl=peek(j):print#8,vl
400 next
410 forj=55296to56295:vl=peek(j):print#8,vl
420 next:close8:close15
430 goto170
440 :
450 input"[147]program name";pn$
460 ifpn$=""then450
470 pn$=pn$+",s,r"
480 open8,8,8,pn$
490 gosub1580
500 forj=1024to2023:input#8,vl:pokej,vl
510 next
520 forj=55296to56295:input#8,vl:pokej,vl
530 next:close8:close15
540 goto170
550 :
560 poke 53280,12: poke 53281,0: poke 646,13
570 print"[147][156]"spc(10)"pulsing pictures ii";chr$(142)
580 print" by george trepal and the drone"
590 printspc(6)"[152]the characters that move are:"
600 printspc(9)"unshifted 1 through 9"
610 printspc(11)"shifted 6 7 8 9"
620 printspc(6)"and unshifted , . * + / -"
630 print" the [153]\ symbol exits the program."
640 printspc(6)"[153]f1 saves the screen to disk"
641 printspc(6)"[153]f3 changes the border color"
642 printspc(6)"[153]f5 changes the background color"
650 printspc(6)"[153]f7 loads a screen from disk"
660 print"[150] please wait about 1 minute for setup.."
670 printspc(9)"[154]moving character sets"
680 j=53248: k=8192: l=10240: m=12288: n=14336
690 poke56334,peek(56334)and254
700 poke 1,peek(1) and 251
710 fori=0to2023:p=peek(i+j)
720 poke i+k,p: poke i+l,p: poke i+m,p: poke i+n,p
730 next
740 poke 1,peek(1) or 4
750 poke 56334,peek(56334) or 1
760 :
770 j=8495
780 printspc(6)"[159]installing custom characters"
790 j=j+1:read x:if x<0 then810
800 poke j,x: goto790
810 if j<10000 then j=10543: goto790
820 if j<12000 then j=12591: goto790
830 if j<14000 then j=14639: goto790
840 print"[147]enter border color (0-15)";:inputsc%
841 poke53280,sc%
845 print"[147] press space bar [146] to continue or"
850 print" other key to change background color"
860 geta$:ifa$=""then860
870 ifa$<>" "thenpoke53281,(cland15):cl=cl+1:goto860
880 x=8:goto160
890 data0,126,126,96,96,126,126,0,24,60
900 data102,195,129,24,60,102,24,36,66,129
910 data24,36,66,129,102,60,24,0,195,102
920 data60,24,129,66,36,24,129,66,36,24
930 data255,255,0,0,0,255,255,0,255,0
940 data0,0,255,0,0,0,255,255,0,0
950 data0,255,255,0,255,0,0,0,255,0
960 data0,0,255,129,129,129,129,129,129,255
970 data0,0,0,24,24,0,0,0,192,129
980 data3,6,12,24,48,96,3,129,192,96
990 data48,24,12,6,192,192,192,192,192,192
1000 data192,192,3,3,3,3,3,3,3,3
1010 data255,255,0,0,0,0,255,255,195,195
1020 data195,195,195,195,195,195,135,36,48,4
1030 data108,104,0,49,0,0,0,0,15,15
1040 data15,15,204,204,51,51,204,204,51,51
1050 data -1
1060 data0,126,126,102,102,102,102,0,60,102
1070 data195,129,24,60,102,195,36,66,129,24
1080 data36,66,129,24,195,102,60,24,0,195
1090 data102,60,24,129,66,36,24,129,66,36
1100 data255,0,0,0,255,255,0,0,0,0
1110 data0,255,0,0,0,255,0,255,255,0
1120 data0,0,255,255,0,255,0,0,0,255
1130 data0,0,0,126,66,66,66,66,126,0
1140 data0,0,60,36,36,60,0,0,3,6
1150 data12,24,48,96,193,131,192,96,48,24
1160 data12,6,131,193,48,48,48,48,48,48
1170 data48,48,12,12,12,12,12,12,12,12
1180 data0,255,255,0,0,255,255,0,102,102
1190 data102,102,102,102,102,102,192,196,28,80
1200 data0,103,37,32,0,0,0,0,240,240
1210 data240,240,102,102,153,153,102,102,153,153
1220 data -1
1230 data0,126,126,6,6,126,126,0,102,195
1240 data0,24,60,102,195,24,66,129,24,36
1250 data66,129,24,36,24,195,102,60,24,0
1260 data195,102,36,24,129,66,36,24,129,66
1270 data0,0,0,255,255,0,0,0,0,0
1280 data255,0,0,0,255,0,0,255,255,0
1290 data0,0,0,255,0,0,255,0,0,0
1300 data255,0,0,0,60,36,36,60,0,0
1310 data0,126,66,66,66,66,126,0,12,24
1320 data48,96,192,129,3,6,48,24,12,6
1330 data3,129,192,96,12,12,12,12,12,12
1340 data12,12,48,48,48,48,48,48,48,48
1350 data0,0,0,255,255,0,0,0,24,24
1360 data24,24,24,24,24,24,0,143,160,162
1370 data2,42,200,3,240,240,240,240,0,0
1380 data0,0,51,51,204,204,51,51,204,204
1390 data -1
1400 data0,102,102,102,102,126,126,0,195,0
1410 data24,60,102,195,24,60,129,24,36,66
1420 data129,24,36,66,60,24,195,102,60,24
1430 data0,195,66,36,152,129,66,36,24,129
1440 data0,0,255,255,0,0,0,255,0,255
1450 data0,0,0,255,0,0,0,0,255,255
1460 data0,0,0,0,0,0,0,255,0,0
1470 data0,255,0,0,0,24,24,0,0,0
1480 data255,129,129,129,129,129,129,255,48,96
1490 data192,129,3,6,12,24,12,6,3,129
1500 data192,96,48,24,3,3,3,3,3,3
1510 data3,3,192,192,192,192,192,192,192,192
1520 data0,255,255,0,0,255,255,0,54,54
1530 data54,54,54,54,54,54,3,121,0,215
1540 data16,244,6,48,15,15,15,15,0,0
1550 data0,0,102,102,153,153,102,102,153,153
1560 data -1
1570 :
1580 open15,8,15
1590 input#15,e,e$
1600 ife=0thenreturn
1610 printe,e$:close8:close15:end
1620 forj=0to39:ts(j)=peek(1024+j):tc(j)=peek(55296+j):poke(1024+j),32:next
1630 input"are you sure<y[206]n>";yn$
1640 ifyn$="y"thenz$="[147]":return
1650 ifyn$="n"then1670
1660 goto1630
1670 forj=0to39:pokej+1024,ts(j):poke(j+55296),tc(j):next:z$=chr$(0):return